#include<linux/module.h>
#include<linux/init.h>
MODULE_LICENSE("GPL");
static int __init try_module_get_init(void);
static void __exit try_module_get_exit(void);

int __init try_module_get_init(void)
{
	int ret;
	const char *name;
	struct module *fmodule;
	name="test_module";
	fmodule=find_module(name);
	if(fmodule != NULL)
	{
		printk("before calling try_module_get,\n");	
		printk("refs of %s is: %d\n",name,module_refcount(fmodule));
		ret=try_module_get(fmodule);
		printk("after calling try_module_get,\n");
		printk("ret = %d\n",ret);
		printk("refs of %s is %d\n",name,module_refcount(fmodule));
	}
	return 0;
}
void __exit try_module_get_exit(void)
{
	printk("module_exit_ok!\n");
}
module_init(try_module_get_init);
module_exit(try_module_get_exit);
